package cn.bdqn.model.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class TaskinfoExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TaskinfoExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andTaskIdIsNull() {
            addCriterion("task_id is null");
            return (Criteria) this;
        }

        public Criteria andTaskIdIsNotNull() {
            addCriterion("task_id is not null");
            return (Criteria) this;
        }

        public Criteria andTaskIdEqualTo(Integer value) {
            addCriterion("task_id =", value, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdNotEqualTo(Integer value) {
            addCriterion("task_id <>", value, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdGreaterThan(Integer value) {
            addCriterion("task_id >", value, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("task_id >=", value, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdLessThan(Integer value) {
            addCriterion("task_id <", value, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdLessThanOrEqualTo(Integer value) {
            addCriterion("task_id <=", value, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdIn(List<Integer> values) {
            addCriterion("task_id in", values, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdNotIn(List<Integer> values) {
            addCriterion("task_id not in", values, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdBetween(Integer value1, Integer value2) {
            addCriterion("task_id between", value1, value2, "taskId");
            return (Criteria) this;
        }

        public Criteria andTaskIdNotBetween(Integer value1, Integer value2) {
            addCriterion("task_id not between", value1, value2, "taskId");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberIsNull() {
            addCriterion("f_task_number is null");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberIsNotNull() {
            addCriterion("f_task_number is not null");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberEqualTo(Integer value) {
            addCriterion("f_task_number =", value, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberNotEqualTo(Integer value) {
            addCriterion("f_task_number <>", value, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberGreaterThan(Integer value) {
            addCriterion("f_task_number >", value, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("f_task_number >=", value, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberLessThan(Integer value) {
            addCriterion("f_task_number <", value, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberLessThanOrEqualTo(Integer value) {
            addCriterion("f_task_number <=", value, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberIn(List<Integer> values) {
            addCriterion("f_task_number in", values, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberNotIn(List<Integer> values) {
            addCriterion("f_task_number not in", values, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberBetween(Integer value1, Integer value2) {
            addCriterion("f_task_number between", value1, value2, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andFTaskNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("f_task_number not between", value1, value2, "fTaskNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberIsNull() {
            addCriterion("task_type_number is null");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberIsNotNull() {
            addCriterion("task_type_number is not null");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberEqualTo(Integer value) {
            addCriterion("task_type_number =", value, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberNotEqualTo(Integer value) {
            addCriterion("task_type_number <>", value, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberGreaterThan(Integer value) {
            addCriterion("task_type_number >", value, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("task_type_number >=", value, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberLessThan(Integer value) {
            addCriterion("task_type_number <", value, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberLessThanOrEqualTo(Integer value) {
            addCriterion("task_type_number <=", value, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberIn(List<Integer> values) {
            addCriterion("task_type_number in", values, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberNotIn(List<Integer> values) {
            addCriterion("task_type_number not in", values, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberBetween(Integer value1, Integer value2) {
            addCriterion("task_type_number between", value1, value2, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andTaskTypeNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("task_type_number not between", value1, value2, "taskTypeNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberIsNull() {
            addCriterion("reported_number is null");
            return (Criteria) this;
        }

        public Criteria andReportedNumberIsNotNull() {
            addCriterion("reported_number is not null");
            return (Criteria) this;
        }

        public Criteria andReportedNumberEqualTo(String value) {
            addCriterion("reported_number =", value, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberNotEqualTo(String value) {
            addCriterion("reported_number <>", value, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberGreaterThan(String value) {
            addCriterion("reported_number >", value, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberGreaterThanOrEqualTo(String value) {
            addCriterion("reported_number >=", value, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberLessThan(String value) {
            addCriterion("reported_number <", value, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberLessThanOrEqualTo(String value) {
            addCriterion("reported_number <=", value, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberLike(String value) {
            addCriterion("reported_number like", value, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberNotLike(String value) {
            addCriterion("reported_number not like", value, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberIn(List<String> values) {
            addCriterion("reported_number in", values, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberNotIn(List<String> values) {
            addCriterion("reported_number not in", values, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberBetween(String value1, String value2) {
            addCriterion("reported_number between", value1, value2, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andReportedNumberNotBetween(String value1, String value2) {
            addCriterion("reported_number not between", value1, value2, "reportedNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberIsNull() {
            addCriterion("dispose_people_number is null");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberIsNotNull() {
            addCriterion("dispose_people_number is not null");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberEqualTo(Integer value) {
            addCriterion("dispose_people_number =", value, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberNotEqualTo(Integer value) {
            addCriterion("dispose_people_number <>", value, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberGreaterThan(Integer value) {
            addCriterion("dispose_people_number >", value, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("dispose_people_number >=", value, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberLessThan(Integer value) {
            addCriterion("dispose_people_number <", value, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberLessThanOrEqualTo(Integer value) {
            addCriterion("dispose_people_number <=", value, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberIn(List<Integer> values) {
            addCriterion("dispose_people_number in", values, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberNotIn(List<Integer> values) {
            addCriterion("dispose_people_number not in", values, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberBetween(Integer value1, Integer value2) {
            addCriterion("dispose_people_number between", value1, value2, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andDisposePeopleNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("dispose_people_number not between", value1, value2, "disposePeopleNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberIsNull() {
            addCriterion("task_run_number is null");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberIsNotNull() {
            addCriterion("task_run_number is not null");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberEqualTo(String value) {
            addCriterion("task_run_number =", value, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberNotEqualTo(String value) {
            addCriterion("task_run_number <>", value, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberGreaterThan(String value) {
            addCriterion("task_run_number >", value, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberGreaterThanOrEqualTo(String value) {
            addCriterion("task_run_number >=", value, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberLessThan(String value) {
            addCriterion("task_run_number <", value, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberLessThanOrEqualTo(String value) {
            addCriterion("task_run_number <=", value, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberLike(String value) {
            addCriterion("task_run_number like", value, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberNotLike(String value) {
            addCriterion("task_run_number not like", value, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberIn(List<String> values) {
            addCriterion("task_run_number in", values, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberNotIn(List<String> values) {
            addCriterion("task_run_number not in", values, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberBetween(String value1, String value2) {
            addCriterion("task_run_number between", value1, value2, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskRunNumberNotBetween(String value1, String value2) {
            addCriterion("task_run_number not between", value1, value2, "taskRunNumber");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeIsNull() {
            addCriterion("task_creat_time is null");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeIsNotNull() {
            addCriterion("task_creat_time is not null");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeEqualTo(Date value) {
            addCriterionForJDBCDate("task_creat_time =", value, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeNotEqualTo(Date value) {
            addCriterionForJDBCDate("task_creat_time <>", value, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeGreaterThan(Date value) {
            addCriterionForJDBCDate("task_creat_time >", value, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("task_creat_time >=", value, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeLessThan(Date value) {
            addCriterionForJDBCDate("task_creat_time <", value, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("task_creat_time <=", value, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeIn(List<Date> values) {
            addCriterionForJDBCDate("task_creat_time in", values, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeNotIn(List<Date> values) {
            addCriterionForJDBCDate("task_creat_time not in", values, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("task_creat_time between", value1, value2, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskCreatTimeNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("task_creat_time not between", value1, value2, "taskCreatTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeIsNull() {
            addCriterion("task_begin_time is null");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeIsNotNull() {
            addCriterion("task_begin_time is not null");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeEqualTo(Date value) {
            addCriterionForJDBCDate("task_begin_time =", value, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeNotEqualTo(Date value) {
            addCriterionForJDBCDate("task_begin_time <>", value, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeGreaterThan(Date value) {
            addCriterionForJDBCDate("task_begin_time >", value, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("task_begin_time >=", value, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeLessThan(Date value) {
            addCriterionForJDBCDate("task_begin_time <", value, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("task_begin_time <=", value, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeIn(List<Date> values) {
            addCriterionForJDBCDate("task_begin_time in", values, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeNotIn(List<Date> values) {
            addCriterionForJDBCDate("task_begin_time not in", values, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("task_begin_time between", value1, value2, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskBeginTimeNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("task_begin_time not between", value1, value2, "taskBeginTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeIsNull() {
            addCriterion("task_end_time is null");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeIsNotNull() {
            addCriterion("task_end_time is not null");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeEqualTo(Date value) {
            addCriterionForJDBCDate("task_end_time =", value, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeNotEqualTo(Date value) {
            addCriterionForJDBCDate("task_end_time <>", value, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeGreaterThan(Date value) {
            addCriterionForJDBCDate("task_end_time >", value, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("task_end_time >=", value, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeLessThan(Date value) {
            addCriterionForJDBCDate("task_end_time <", value, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("task_end_time <=", value, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeIn(List<Date> values) {
            addCriterionForJDBCDate("task_end_time in", values, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeNotIn(List<Date> values) {
            addCriterionForJDBCDate("task_end_time not in", values, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("task_end_time between", value1, value2, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andTaskEndTimeNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("task_end_time not between", value1, value2, "taskEndTime");
            return (Criteria) this;
        }

        public Criteria andFlowStateIsNull() {
            addCriterion("flow_state is null");
            return (Criteria) this;
        }

        public Criteria andFlowStateIsNotNull() {
            addCriterion("flow_state is not null");
            return (Criteria) this;
        }

        public Criteria andFlowStateEqualTo(String value) {
            addCriterion("flow_state =", value, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateNotEqualTo(String value) {
            addCriterion("flow_state <>", value, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateGreaterThan(String value) {
            addCriterion("flow_state >", value, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateGreaterThanOrEqualTo(String value) {
            addCriterion("flow_state >=", value, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateLessThan(String value) {
            addCriterion("flow_state <", value, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateLessThanOrEqualTo(String value) {
            addCriterion("flow_state <=", value, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateLike(String value) {
            addCriterion("flow_state like", value, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateNotLike(String value) {
            addCriterion("flow_state not like", value, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateIn(List<String> values) {
            addCriterion("flow_state in", values, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateNotIn(List<String> values) {
            addCriterion("flow_state not in", values, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateBetween(String value1, String value2) {
            addCriterion("flow_state between", value1, value2, "flowState");
            return (Criteria) this;
        }

        public Criteria andFlowStateNotBetween(String value1, String value2) {
            addCriterion("flow_state not between", value1, value2, "flowState");
            return (Criteria) this;
        }

        public Criteria andTaskStateIsNull() {
            addCriterion("task_state is null");
            return (Criteria) this;
        }

        public Criteria andTaskStateIsNotNull() {
            addCriterion("task_state is not null");
            return (Criteria) this;
        }

        public Criteria andTaskStateEqualTo(Integer value) {
            addCriterion("task_state =", value, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateNotEqualTo(Integer value) {
            addCriterion("task_state <>", value, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateGreaterThan(Integer value) {
            addCriterion("task_state >", value, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("task_state >=", value, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateLessThan(Integer value) {
            addCriterion("task_state <", value, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateLessThanOrEqualTo(Integer value) {
            addCriterion("task_state <=", value, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateIn(List<Integer> values) {
            addCriterion("task_state in", values, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateNotIn(List<Integer> values) {
            addCriterion("task_state not in", values, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateBetween(Integer value1, Integer value2) {
            addCriterion("task_state between", value1, value2, "taskState");
            return (Criteria) this;
        }

        public Criteria andTaskStateNotBetween(Integer value1, Integer value2) {
            addCriterion("task_state not between", value1, value2, "taskState");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleIsNull() {
            addCriterion("service_schedule is null");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleIsNotNull() {
            addCriterion("service_schedule is not null");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleEqualTo(String value) {
            addCriterion("service_schedule =", value, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleNotEqualTo(String value) {
            addCriterion("service_schedule <>", value, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleGreaterThan(String value) {
            addCriterion("service_schedule >", value, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleGreaterThanOrEqualTo(String value) {
            addCriterion("service_schedule >=", value, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleLessThan(String value) {
            addCriterion("service_schedule <", value, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleLessThanOrEqualTo(String value) {
            addCriterion("service_schedule <=", value, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleLike(String value) {
            addCriterion("service_schedule like", value, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleNotLike(String value) {
            addCriterion("service_schedule not like", value, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleIn(List<String> values) {
            addCriterion("service_schedule in", values, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleNotIn(List<String> values) {
            addCriterion("service_schedule not in", values, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleBetween(String value1, String value2) {
            addCriterion("service_schedule between", value1, value2, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andServiceScheduleNotBetween(String value1, String value2) {
            addCriterion("service_schedule not between", value1, value2, "serviceSchedule");
            return (Criteria) this;
        }

        public Criteria andAuditInfoIsNull() {
            addCriterion("audit_info is null");
            return (Criteria) this;
        }

        public Criteria andAuditInfoIsNotNull() {
            addCriterion("audit_info is not null");
            return (Criteria) this;
        }

        public Criteria andAuditInfoEqualTo(String value) {
            addCriterion("audit_info =", value, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoNotEqualTo(String value) {
            addCriterion("audit_info <>", value, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoGreaterThan(String value) {
            addCriterion("audit_info >", value, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoGreaterThanOrEqualTo(String value) {
            addCriterion("audit_info >=", value, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoLessThan(String value) {
            addCriterion("audit_info <", value, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoLessThanOrEqualTo(String value) {
            addCriterion("audit_info <=", value, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoLike(String value) {
            addCriterion("audit_info like", value, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoNotLike(String value) {
            addCriterion("audit_info not like", value, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoIn(List<String> values) {
            addCriterion("audit_info in", values, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoNotIn(List<String> values) {
            addCriterion("audit_info not in", values, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoBetween(String value1, String value2) {
            addCriterion("audit_info between", value1, value2, "auditInfo");
            return (Criteria) this;
        }

        public Criteria andAuditInfoNotBetween(String value1, String value2) {
            addCriterion("audit_info not between", value1, value2, "auditInfo");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}